a8514f51d90941a0fa9aa35293ffc8b229c98599,findbugs/src/java/edu/umd/cs/findbugs/detect/BadResultSetAccess.java,BadResultSetAccess,sawOpcode,#number#,85
Before Change
public void sawOpcode(int seen) {
try {
if ((seen == INVOKEINTERFACE)
&& (getClassConstantOperand().equals("java/sql/ResultSet"))) {
String methodName = getNameConstantOperand();
if ((methodName.startsWith("get") && dbFieldTypesSet.contains(methodName.substring(3)))
|| (methodName.startsWith("update") && dbFieldTypesSet.contains(methodName.substring(6)))) {
After Change
try {
if (seen == INVOKEINTERFACE) {
String methodName = getNameConstantOperand();
String clsConstant = getClassConstantOperand();
if ((clsConstant.equals("java/sql/ResultSet") &&
((methodName.startsWith("get") && dbFieldTypesSet.contains(methodName.substring(3))) ||
(methodName.startsWith("update") && dbFieldTypesSet.contains(methodName.substring(6)))))
|| ((clsConstant.equals("java/sql/PreparedStatement") &&
((methodName.startsWith("set") && dbFieldTypesSet.contains(methodName.substring(3))))))) {
String signature = getSigConstantOperand();
Type[] argTypes = Type.getArgumentTypes(signature);